A switching node considered in the context of the present description comprises input terminal modules and output terminal modules, interconnected by an asynchronous cell switching network. In the remainder of the present description the input and output terminal modules are simply referred to as “input modules” and “output modules”, respectively.
In the switching node, an external data block received at an incoming port of an input module must be switched either to an outgoing port of a given output module, in which case it is called a unicast data block, or to outgoing ports of a plurality of output modules, in which case it is called a multicast data block. External data blocks received in the form of variable length packets they are converted into internal format cells in the input modules using techniques in the art. When they have been transferred to the destination output modules via the switching network, the internal format cells are converted back into external data blocks, cells or packets. Within the switching node, the asynchronous switching network switches internal format cells, regardless of the external data block type.
In the input modules of the node, depending on the data block type (unicast or multicast), there are two types of cells to be transferred across the switching network: a first type of cell, called a unicast cell, which must be routed to a given single destination output module, and a second type of cell, called a multicast cell, which must be routed to N given destination output modules of the n2 output modules of the node (where 1<N≦n2).
In the case of multicast cells, there are two prior art methods of converting a multicast cell into N cells to be delivered to the N respective destination output modules: in the first method, the input module sends a single example of the multicast cell to the switching network, and it is the network which generates N copied cells from the multicast cell and routes each of the N copied cells to the N respective destination output modules required for the multicast cell. The second method consists in generating N copies of a multicast cell in the input module so that it then sends N unicast cells to the switching network, each cell being addressed to one of the N destination output modules required for that multicast cell. The invention relates to this second method in which the switching network transfers only unicast cells to a given output module, as each multicast cell is converted into N unicast cells in the input module.
In the switching node, the streams of cells transferred across the switching network can cause congestion in the network whenever the overall bit rate of the cell traffic supplied to a given output module and coming from different input modules becomes excessive relative to the bandwidth authorized for access to the output module.
The conventional way to prevent such congestion in the switching network is for each input module to regulate the bit rates at which cells are transferred to each output module of the node so that the overall bit rate of the cell traffic supplied to each output module is not excessive.
To this end, each input module is provided with buffer memories for temporarily storing cells, and the buffer memories are structured in the form of queues, each of which corresponds to a given output module.
That prior art technique is well suited to regulating multicast cell traffic bit rate when multicast cells are sent to only one output module. Using the above technique to regulate the transfer across the switching network of the traffic consisting of all of the cells, which are all unicast cells, to their respective destination output modules can therefore be envisaged a priori. To this end, in each input module, after a multicast cell is converted into N corresponding copied unicast cells addressed to N respective destination output modules of the multicast cell, each of the N copied unicast cells is then placed, along with the normal unicast cells, in the queue relating to its destination output module. Accordingly, each stream of normal and copied unicast cells sent to a given output module from the corresponding queue of an input module can be regulated by a predetermined cell service bit rate allocated to that queue.
However, the problem with implementing this prior art technique applicable to unicast cells in each input module is to distribute beforehand the corresponding N copied cells for each multicast cell into the required N queues.
For each multicast cell, the complexity of the process of conversion into the N copied unicast cells to be placed in the respective queues increases with the number n2 of output modules of the node (since N≦n2). The process is therefore extremely complex for a high-capacity switching node having a large number of output modules. This leads to a circuitry surface area that can be excessive in the case of a parallel distribution or to a processing time that can be long in the case of a sequential distribution. Moreover, a simple distribution of the above type cannot correlate in time the departure instants from the required N queues of the N copied unicast cells corresponding to a given multicast cell.